This invention relates to fibre channel arbitrated loop network architecture and more particularly to an adaptation of fibre channel architecture to switchable star architectures. The purpose of the invention is to increase the throughput of fibre channel arbitrated loop networks.
Fibre channel networks are a particular class of high-speed networks defined by ANSI Standard X3T11. Fibre channel networks can be constructed in three different topologies: point-to-point, arbitrated loop and fabric switch. Point-to-point networks consist of two stations connected directly to (and only to) each other. Fabric switches can connect networks of up to 16 million stations and provide multiple classes of service (connection-oriented, connection-less with acknowledgement, connection-less without acknowledgement, or intermix).
Referring to FIG. 1, an arbitrated loop topology 10 is shown, which is a shared-bandwidth, logical ring topology designed for low-cost attachment of such stations 12 as servers and disk array devices. Up to 126 stations can communicate on an arbitrated loop 14, but only two stations can communicate interactively at any one time (with an exception for broadcast or multicast conversations). The arbitrated loop standard also allows for a single fabric port 16 to be resident on the loop for connection into the larger network.
In an arbitrated loop topology, stations 12, 16, 18, 20, 22 that intend to communicate on the loop 14 must xe2x80x9carbitratexe2x80x9d for access. Stations signal their intent to arbitrate by issuing a primitive signal for circulation around the loop to all nodes or stations, called an ARB. The ARB is a special ordered set signal which contains the identity of the station that requests access. When multiple stations request access simultaneously, the station with the lowest physical address prevails. (Physical addresses are assigned cooperatively by the stations each and every time the loop topology changes.) A station 12 that wins arbitration then xe2x80x9copensxe2x80x9d the station 18 with which it wants to communicate by sending an OPN primitive, which is a special ordered set signal including the address of the target station as an argument. The two stations 12, 18 then communicate in either half-duplex or full-duplex fashion, until both stations agree that the conversation is finished.
Fibre channel arbitrated loops according to the standard may implement access fairness in which all stations connected in an arbitrated loop are presumed to have one chance to win access during any available variable-length xe2x80x9cfairness windowxe2x80x9d or time slot. Once a station has won arbitration during a fairness window (and chooses to obey the access fairness algorithm according to the standard), it will not again arbitrate for access during the same fairness window. According to the standard, this ensures that no station can be deprived its chance to initiate a circuit on an arbitrated loop, since the fairness window remains open so long as the current arbitration winner receives arbitration primitives from another station. The fairness window closes when the current arbitration winner stops receiving arbitration primitives from any other stations on the loop, thus indicating either each station has had an opportunity to initiate a circuit during this fairness window or has no data to transmit.
Arbitrated loops are typically wired together using hub devices 15 in which the loop is formed among the connected stations. A hub device 15 allows multiple stations to be connected together, although only one conversation can take place at any instant in time. This is analogous to networking topologies such as Token Ring (ISO/IEEE 802.5) and Ethernet (ISO/IEEE 802.3).
Referring to FIG. 2, in networking topologies, such as loop networks 14, 114, 214, 314, the conventional prior art approach to increasing the available bandwidth is to provide pass-through switches 24, 26, 28 which allow multiple concurrent conversations to take place. The disadvantage is a need for extra switching logic and buffer memory to support connections. In fibre channel technology it is conventional to use the fabric switch topology when greater bandwidth is needed. However, fabric switches tend to be complex and expensive, particularly given that they must also implement a large number of standardized features, such as address space resolution, and support for multiple classes of service.
Any modification to the arbitrated loop must behave such that devices connected to it are unaware that they are not on a normal loop when they are communicating. This is important for interoperability with any existing fibre channel arbitrated loop hardware on the market.
The prior improvement disclosed in U.S. patent application Ser. No. 09/062,158 over conventional fibre channel arbitrated loop protocols was optimized for throughput and minimal latency to the detriment of access fairness.
What is needed is a mechanism whereby access fairness is maintained without unnecessary degradation to latency and throughput in a fibre channel arbitrated loop.
According to the invention, in a fibre channel network environment wherein an autonomous hub is provided with a switchable connection to another autonomous hub, an autonomous hub being an arbitrated loop with at least one port, a method is provided for maintaining switchable access between the autonomous hubs while also maintaining access fairness without degrading throughput. The method includes allowing all uncommitted ports to arbitrate together on an integrated hub, while preventing ports on those autonomous hubs which contain a port that has been committed to a loop circuit, from winning arbitration. While the established loop circuits are concurrently exchanging data, arbitration is conducted among the remaining ports which desire access to the integrated hub. Since autonomous hubs containing committed ports are effectively excluded from arbitration, the other ports on those busy hubs cannot win an arbitration and thereby prevent connection of multiple current circuits.
Furthermore, the inventive method includes a mechanism for alerting committed ports that a current fairness window remains open, thus preventing the committed port from initiating a new circuit connection and thus depriving a lower priority station from establishing a circuit.
Still further, a mechanism is provided to alert all autonomous hubs that an uncommitted port on a busy hub wishes to arbitrate for access. This is done by converting the arbitration signal of the uncommitted port to (typically) the second lowest arbitration priority, and then introducing that converted arbitration signal into the arbitration path to be propagated to all autonomous hubs as part of the regular arbitration process. The uncommitted port can then reenter into arbitration using its actual arbitration priority during a current fairness window as soon as the circuit on its hub is terminated and its priority is recognized.
Further refinements include control over detection and signaling of fairness windows, as well as a mechanism for reserving lower arbitration priorities.
A switched arbitrated loop (SAL) according to the invention provides the concurrent bandwidth resource of a fabric switch without the extra features which would increase design cost and operational overhead. In a specific embodiment, a switched arbitrated loop supports 125 nodes for stations (plus one fabric port) in a single loop topology.
The invention provides the concurrent connections and high bandwidth capabilities of a conventional fabric switch, but at a cost close to that of a conventional hub while behaving such that devices connected to it are unaware that they are not on a normal loop when they are communicating.
The invention will be better understood by reference to the following detailed description in connection with the accompanying drawings.